package com.wan.dao;

import com.wan.entity.User;
import com.wan.vo.UserVo;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {

    /**
     * 根据登录账号查询员工信息
     * @param loginName
     * @return
     */
    User findUserByLoginName(String loginName);

    /**
     *
     * 根据部门编号查询员工数量
     * @param deptId
     * @return
     */
    int getUserCountByDeptId(Integer deptId);

    /**
     * 根据角色编号查询员工信息
     * @param roleId
     * @return
     */
    int getUserCountByRoleId(Integer roleId);

    /**
     * 查询员工列表
     * @param userVo
     * @return
     */
    List<User> findUserList(UserVo userVo);

    /**
     * 添加员工
     * @param user
     * @return
     */
    int addUser(User user);

    /**
     * 修改员工
     * @param user
     * @return
     */
    int updateUser(User user);

    /**
     * 删除员工
     * @param id
     * @return
     */
    int deleteById(Integer id);


    void deleteUserAndRole(Integer id);

    @Insert("insert into sys_role_user (eid,rid) values(#{eid},#{rid})")
    void addUserRole(@Param("rid") String roleId,@Param("eid") Integer userId);
}
